package org.seamon.management.service;

import com.baomidou.mybatisplus.extension.service.IService;
import org.seamon.management.pojo.dto.DeptInsertDto;
import org.seamon.management.pojo.dto.DeptUpdateDto;
import org.seamon.management.pojo.entity.Dept;
import org.seamon.management.pojo.vo.DeptTreeVo;

import java.util.List;

/**
* @author Simon
* @description 针对表【sys_dept(机构表)】的数据库操作Service
* @createDate 2025-07-11 00:31:54
*/
public interface DeptService extends IService<Dept> {

    /**
     * 获取部门树
     *
     * @return 部门树
     */
    List<DeptTreeVo> listTree();

    /**
     * 保存部门
     *
     * @param deptDto 部门
     * @return 是否保存成功
     */
    void save(DeptInsertDto deptDto);

    /**
     * 更新部门
     *
     * @param deptDto 部门
     */
    void updateById(DeptUpdateDto deptDto);

    /**
     * 删除部门
     *
     * @param id 部门ID
     * @return 是否删除成功
     */
    void removeById(Long id);
}
